import unittest

from framework.AW.STrak import strak
from framework.AW.STrak.process import *
from framework.AW.STrak.strak import *
from framework.AW.STrak.station import *
from framework.AW.STrak.car import *

# 环线--手动模式--到工位
def to_station():
    try:
        """
        用例1:到工位
        仿真打开，初始化3辆小车，间距300mm
        配置：上海S3样机（环线）/S3样机配置（3个小车）
        1.初始化 包含动作：急停 初始化
        2.自动模式切换到手动模式     
        3.小车3运动模式调整为绝对模式
        4.选择3号小车，使能
        5.到工位2 包含动作：读取工位2位置 写入到位置工位2位置
        6.点击开始移动 小车3移动      
        7.检查小车3位置是否正确    
        8.移动结束后将模式调整回自动模式 以免影响其他测试
        """
        initial()
        mode_switch_manual()
        car_3_sport_mode_abs()
        enable_car_3()
        car_3_goal_station_2()
        car_3_move()
        car_3_pos_check_station_2()

    except Exception as e:
        print(f"测试过程出现异常:{e}")
        raise
    finally:
        mode_switch_atuo()


class ToStation(unittest.TestCase):
    @staticmethod
    def testOn():
        to_station()